/**
 * 初始化规则库定义详情对话框
 */
var SdsStandRuleBaseInfoDlg = {
    validateFields: {
        ruleCode: {
            validators: {
                notEmpty: {
                    message: '规则代码不能为空'
                }
            }
        },
        ruleDesc: {
            validators: {
                notEmpty: {
                    message: '规则描述不能为空'
                }
            }
        },
        ruleType: {
            validators: {
                notEmpty: {
                    message: '类型不能为空'
                }
            }
        },
        is_default: {
            validators: {
                notEmpty: {
                    message: '默认值不能为空'
                }
            }
        },
        calType: {
            validators: {
                notEmpty: {
                    message: '计算类型不能为空'
                }
            }
        },
    }
};


/**
 * 关闭此对话框
 */
SdsStandRuleBaseInfoDlg.close = function () {
    parent.layer.close(parent.layer.getFrameIndex(window.name)); //先得到当前iframe层的索引,再执行关闭
}

/**
 * 验证数据是否为空
 */
SdsStandRuleBaseInfoDlg.validate = function () {
    $('#sdsStandRuleBaseInfoForm').data("bootstrapValidator").resetForm();
    $('#sdsStandRuleBaseInfoForm').bootstrapValidator('validate');
    return $("#sdsStandRuleBaseInfoForm").data('bootstrapValidator').isValid();
}
/**
 *  初始化规则计算页签
 */
SdsStandRuleBaseInfoDlg.initRuleCalTab = function (){
    SdsStandRuleCalDlg.search();
};
/**
 *  选中事件
 */
SdsStandRuleBaseInfoDlg.check = function () {
    if ($("#ruleId").val() == "0") {
        Sys.alert("请创建规则后再进行规则运算！", 2);
        return false;
    }
    return true;
};

/**
 *  页签改变
 */
SdsStandRuleBaseInfoDlg.changeTabs = function (title, index) {
    switch (index) {
        case 1:
            if (SdsStandRuleBaseInfoDlg.check()) {
                SdsStandRuleBaseInfoDlg.initRuleCalTab();
            } else {
                $('#ruleBaseTabs').tabs('select', 0);  //选中第一个页签
            }
            break;
        default:
            break;
    };
};

/**
 * 提交规则新增
 */
SdsStandRuleBaseInfoDlg.addSubmit = function () {

    if (!this.validate()) {
        return;
    }
    //提交信息
    Sys.ajaxForm('sdsStandRuleBaseInfoForm', Sys.backendPath + "/sds/sdsstandrulebase/add", function (res) {
        Sys.success("添加成功");
        $("#id").val(res.message);
        $("#ruleId").val(1);
        SdsStandRuleCalDlg.init();
        window.parent.SdsRuleBase.table.refresh();

    });
}


/**
 * 提交规则修改
 */
SdsStandRuleBaseInfoDlg.editSubmit = function () {

    if (!this.validate()) {
        return;
    }
    //提交信息
    Sys.ajaxForm('sdsStandRuleBaseInfoForm', Sys.backendPath + "/sds/sdsstandrulebase/update", function (res) {
        Sys.success(res.message);
        window.parent.SdsRuleBase.table.refresh();
        SdsStandRuleBaseInfoDlg.close();
    });
}




function Common_GetValue() {
    var itmValue = '';

    if (typeof (arguments[0]) !== 'string') return '';
    if (arguments[0] == '') return '';

    var $this = $('#' + arguments[0]);
    if ($this.length < 1) return '';

    var className = $this.attr("class").split(' ')[0];

    if (className == 'textbox') {  //文本框
        itmValue = $this.val();
    } else if (className == 'hisui-numberbox') {  //数字
        itmValue = $this.val();
    } else if (className == 'hisui-datebox') {  //日期
        itmValue = $this.datebox('getValue');
    } else if (className == 'hisui-timespinner') {  //时间框
        itmValue = $this.timespinner('getValue');
    } else if (className == 'hisui-combobox') {  //下拉框（多选下拉框没有封装）
        itmValue = $this.combobox('getValue');
    } else if (className == 'hisui-switchbox') {  //开关
        itmValue = $this.switchbox('getValue');
    } else if (className == 'hisui-checkbox') {  // 单个复选框
        itmValue = $this.checkbox('getValue');
    } else if (className == 'hisui-radio') {  //单个单选框
        itmValue = $this.radio('getValue');
    } else if (className == 'hisui-searchbox') {  //查询框框
        itmValue = $this.searchbox('getValue');
    }

    return itmValue;
}

$(function () {
    $HUI.combobox('#calType',
        {
            data: [
                {'calType': 'Day', 'Desc': "天数"},
                {'calType': 'Hour', 'Desc': "小时"},
                {'calType': 'Minute', 'Desc': "分钟"},
                {'calType': 'String', 'Desc': "字符串"}
            ],
            valueField: 'calType',
            textField: 'Desc',
        })

    $HUI.combobox('#isDefault',
        {
            data: [
                {'isDefault': '0', 'Desc': "false"},
                {'isDefault': '1', 'Desc': "true"}
            ],
            valueField: 'isDefault',
            textField: 'Desc',
        })

    Sys.initValidator("sdsStandRuleBaseInfoForm", SdsStandRuleBaseInfoDlg.validateFields);
    // 修改按钮默认显示数据源页签 新增按钮默认第一个页签
    if ($("#ruleId").val() != "0") {
        $("#ruleBaseTabs").tabs('select', 1);
        SdsStandRuleCalDlg.init();
    }

});
